iT邦幫忙

2024 iThome 鐵人賽

DAY 22
0
Kubernetes

從零到一: 使用Spring Boot、Kubernetes 和 Istio實現微服務架構系列 第 22

Day 22 使用Spring Boot、Kubernetes 和 Istio實現微服務架構 - istio架構

  • 分享至 

  • xImage
  •  

昨天簡單介紹了istio,今天來詳細講講istio是怎麼運作的

istio 架構圖

https://ithelp.ithome.com.tw/upload/images/20240918/20139136BHrfKLO5sx.png
在istio 架構中,分為Data Plane 與 Control Plane,藉由兩者彼此合作,來達成istio 的核心功能,包括流量控制、可觀測性、安全性與容錯等機制。

Data Plane 數據平面

使用開源專案Envoy 作為代理,且該代理通常被部屬於微服務旁,在Kubernetes中,也就是與微服務的Pod一同部屬,此部屬模式被稱為Sidecar。Sidecar負責協調和控制微服務之間的所有通訊,還可以蒐集所有流量與數據。簡單來說此代理會攔截進到微服務的所有流量,進行各種操作。

Control Plane 控制平面

Control Plane 負責各項功能的集成與管理Data Plane中的代理,其中包括各項配置、服務發現與路由等。
Control Plane 包含了以下組件,分別為

  • Pilot

服務發現:蒐集所有網格中的服務發現訊息並發送給各個代理,使其能進行正確的路由
配置管理:管理並配置代理的路由規則、負載平衡與故障復原等策略。

  • Citadel

身分驗證:為微服務之間的通訊提供安全配置如:強身分驗證與mTLS加密等。
證書管理:為微服務簡化證書管理,包括證書的生成、輪換與管理

  • Galley

配置驗證:負責驗證配置的合法與正確性。
配置分發:將經過驗證的配置分給其他控制平面,確保控制平面間配置的一致性。
配置管理:提供配置管理與分發,包括版本控制與回滾等

以上元件都被整合至istiod中,所以之後在安裝時只需要安裝istiod就可以包含以上功能了


上一篇
Day 21 使用Spring Boot、Kubernetes 和 Istio實現微服務架構 - istio 介紹
下一篇
Day 23 使用Spring Boot、Kubernetes 和 Istio實現微服務架構 - istio 在 Kubernetes 安裝
系列文
從零到一: 使用Spring Boot、Kubernetes 和 Istio實現微服務架構30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言